| ..:: Menu ::.. | ..:: Podstawy Object Pascala część: 3 ::.. | ..::Info i Reklamy::.. | ||||||||||||||||||||||||||||||||||
|
Strona Główna Kursy DELPHI Kursy C++ Linki Forum Download Seriale Humor Reklama O autorze |
Instrukcje if, then, elseInstrukcje if, then można przetłumaczyć na polski tak: "Jeżeli coś tam, coś tam będzie tak to wtedy zrób coś tam coś tam.". Ta instrukcja służy do porównywania wartości. Przy okazji poznasz nowe polecenia... Do programu dodaj zmienną "Wylosowanaliczba" typu Integer. Cały kod programu powinien wyglądać tak:{ Copyright (c) 2001 - Adam Boduch } program ifthen; uses Windows; var WylosowanaLiczba: Integer; begin Randomize; // uruchamiamy bęben losujący :) WylosowanaLiczba := Random(20); // losuj z zakresu 19 if WylosowanaLiczba < 10 then MessageBox(0, 'Wylosowana liczba jest mniejsza niż 10', '{none}', MB_OK); if WylosowanaLiczba > 10 then MessageBox(0, 'Wylosowana liczba jest większa niż 10', '{none}', MB_OK); end. Ufff, to już jest trudniejsze, prawda? Najpierw opiszę procedurę losowania liczby. Na samym początku należy użyć polecenia Randomize. Polecenie Random(20) losuje liczbę od 0 do 19. Tak się składa, że Delphi nie losuje od 1 do 20 tylko właśnie od 0 do 19. Tak już jest. No więc losuje i wylosowaną wartość przypisuje do zmiennej WylosowanaLiczba. Następnie następuje sprawdzenie jaka liczba została wylosowana. Jeżeli jest mniejsza od 10 to zostaje wyświetlony odpowiedni komunikat. Jeżeli jest większa od 10 to także wyświetlany jest komunikat. Dosłownie instrukcje if można przetłumaczyć tak: "Jeżeli zmienna WylosowanaLiczba jest mniejsza od 10 to...". Porównanie następuje za pomocą znaku < oraz > , które oczywiście tak jak w matematyce oznaczają większe i mniejsze. W tym miejscu chciałbym wspomnieć o nowym typie, z którego w przyszłości korzystać będziesz często. Ten typu to Boolean . Nie przybiera on wartości liczbowych ani tekstowych. Może przyjmować wartość TRUE ( prawda ), albo FALSE ( fałsz ). if ProgramUruchomiony = true then { coś } Jeżeli napiszesz tak: if ProgramUrhcomiony then { coś } Delphi będzie wiedział, że jak nie napisałeś true, ani false to chodzi Ci o TRUE. OperatoryOperatory bardzo często są wykorzystane właśnie wraz z instrukcją if. Oto podstawowe operatory:
A oto przykład połączenia operatorów z instrukcją if, then: if (Liczba > 100) and (Liczba < 150) then { jeżeli liczba jest większa od 100, ale mniejsza od 150 } if (Liczba <> 100) and not (Liczba = 120) then { jeżeli liczba jest rożna od 100 i nie jest to 120 } if (Liczba < 100) or (Liczba < 150) then { jeżeli liczba jest mniejsza od 100 oraz mniejsza od 150 } Zauważ, że jeżeli masz więcej warunków do spełnienia to musisz je wsiąść w nawias. Do czego w takim razie służy else? Można to przetłumaczyć jako: "w przeciwnym wypadku". Tzn., co program ma robić jeżeli warunek nie zostanie spełniony: if Liczba = 100 then { jezeli liczba jest rowna 100 to rób cos tam } MessageBox(0, 'Jest to liczba 100', '', MB_OK) { w przeciwnym wypadku } else MessageBox(0, 'Nie wiem co to za liczba', '', MB_OK); Jeżeli wylosowana liczba to 100 wyświetl okienko. Zauważ, że po poleceniu MessageBox nie ma średnika! Wynika to dlatego, że następnym poleceniem będzie else. Ale uważaj! Jeżeli po instrukcji if, then będzie więcej niż jedna komenda to musisz wszystko wsiąść dodatkowo w słowa begin i end: if Liczba = 100 then begin { <-- trzeba begin bo beda po tym dwa polecenia! } MessageBox(0, 'Jest to liczba 100', '', MB_OK); { <-- jest średnik!!! } MessageBox(0, 'Zgadłeś! Brawo!', '', MB_OK); { <-- tu także jest średnik! } end else MessageBox(0, 'Nie wiem co to za liczba', '', MB_OK); Niestety na początku może to być mylące, ale niestety trzeba to zapamiętać. Jeżeli nie ma else na końcu to cały listing przedstawiał będzie się tak: if Liczba = 100 then begin { <-- trzeba begin bo beda po tym dwa polecenia! } MessageBox(0, 'Jest to liczba 100', '', MB_OK); { <-- jest średnik!!! } MessageBox(0, 'Zgadłeś! Brawo!', '', MB_OK); { <-- tu także jest średnik! } end; <--- Wstecz | Dalej ---> |
Reklama To miejsce czeka na twoją reklame. Więcej informacji w dziale Reklama |
||||||||||||||||||||||||||||||||||